package com.tbit.uqbike.client.service;

import com.tbit.uqbike.client.pojo.WeixinConfig;
import com.tbit.uqbike.client.pojo.WeixinPayConfig;
import org.apache.ibatis.annotations.Param;

/**
 * 微信支付配置service
 *
 * @author Leon
 * 2017年2月24日 下午4:09:17
 */
public interface WeixinPayConfigService {
    /**
     * 根据品牌id查询
     *
     * @param accountId
     * @return
     */
    WeixinPayConfig getByAccountId(Integer accountId, Integer type);

    /**
     * 修改
     */
    void edit(WeixinPayConfig weixinPayConfig);

    /**
     * 获取第一个配置
     *
     * @return
     */
    WeixinConfig getByVerifier(String verifier);

    /**
     * 根据appId查询
     *
     * @param appId
     * @return
     */
    WeixinPayConfig getByAppid(String appId);

    /**
     * 根据Partner查询
     *
     * @param mchId
     * @return
     */
    WeixinPayConfig getByPartner(@Param("mchId") String mchId);

    WeixinPayConfig getByPartnerAndAppId(String partner,String appId,Boolean isCache);

    /**
     * 根据品牌或者区域id查询
     *
     * @param accountId   品牌id
     * @param type        类型
     * @param adAccountId 区域id
     * @return
     */
    WeixinPayConfig getByAccountIdPlus(Integer accountId, Integer type, Integer adAccountId);
}  